A Survey Paper on Transactional Memory
نویسنده
چکیده
The necessity to write concurrent programs is increasing as systems are getting more complex while processor speed increases are slowing down. The current popular solution for parallel programming is to use locks but they contain many known drawbacks that make them a suboptimal solution. Transactional memory is a recent alternative to locks that is gaining a lot of attention in the research community. In this survey paper I explain the concept of transaction memory and identify its various benefits and limitations. Work on software, hardware and hybrid approaches to transactional memory is presented as well as a way to combine transactional code with code that uses locks. I conclude with my thoughts on the future of this potentially groundbreaking mechanism for shared-variable synchronization.
منابع مشابه
Survey on consistency conditions
This survey provides formal definitions of consistency conditions for Transactional Memory. For reasons of completeness, a big collection of consistency conditions from other relevant fields, such as shared-memory consistency and consistency for database systems, are also studied. The report attempts to bridge the gaps that exist between different formulations of consistency conditions. To do t...
متن کاملSoftware transactional memories for Scala
Transactional memory is an alternative to locks for handling concurrency in multi-threaded environments. Instead of providing critical regions that only one thread can enter at a time, transactionalmemory records sufficient information to detect and correct for conflicts if they occur. This paper surveys the range of options for implementing software transactional memory in Scala. Where possibl...
متن کاملDependence-Aware Transactional Memory
Transactional memory is a promising programming model to enable high performance programs with reasonable programmer effort on the parallel architectures favored by modern processor manufacturers. This paper introduces dependence-aware transactions, a new method for maintaining the conflict serializability safety property of memory transactions while allowing significant freedom for an implemen...
متن کاملDirectory Protocols for Distributed Transactional Memory
Distributed directory protocols for shared objects play an important role in providing access to higher level abstractions like transactional memory. They offer primitives to retrieve data and read it, or to move data and allow to write it. This chapter describes directory protocols for large-scale distributed systems and discusses the subtleties of incorporating them in a large-scale distribut...
متن کاملTransactional Memory
Today's methods of writing programs that are executed on shared-memory multiprocessors systems rely mostly on locking mechanism. On one hand, those methods enable programmers to write correct multi-threaded programs that access shared resources; on the other hand, lock usage reduces performance due to suboptimal use of them. In this survey paper we will show several implementations of Transacti...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009